package collection;

import java.util.Deque;
import java.util.LinkedList;

/**
 * @author DBX
 * @effect 栈结构
 *          栈可以保存一组元素，但是存取元素必须遵循先进后出
 *          通常使用栈来完成如：前进，后退功能
 * @date 2021/09/04/14:40
 */
public class StackDemo {
    public static void main(String[] args) {
        Deque<String> stack = new LinkedList<>();
        stack.push("one");
        stack.push("two");
        stack.push("three");
        stack.push("four");
        stack.push("five");
        System.out.println(stack);
        System.out.println(stack.pop());
        System.out.println(stack);

        /*
        * pop方法在出栈时，若栈中没有元素了则会抛出异常
        * poll方法做出队操作时，若队列中没有元素则会返回为null*/
        for (String s : stack) {
            System.out.println(s);
        }
        for (int i = 0; i < stack.size(); ) {
            System.out.println(stack.pop());
        }
    }
}
